#define _CRT_SECURE_NO_WARNINGS 1


#include"priority_queue.h"

int main()
{
	/*Less<int> LessFunc;
	cout << LessFunc(1, 2) << endl;

	Greater<int> GreaterFunc;
	cout << GreaterFunc(1, 2) << endl;*/

	yyh::priority_queue<int> pq1;
	for (int i = 0; i < 5; i++)
	{
		pq1.push(i);
	}
	while (!pq1.empty())
	{
		cout << pq1.top() << ' ';
		pq1.pop();
	}
	cout << endl;

	yyh::priority_queue<int, vector<int>, yyh::Greater<int>> pq2;
	for (int i = 0; i < 5; i++)
	{
		pq2.push(i);
	}
	while (!pq2.empty())
	{
		cout << pq2.top() << ' ';
		pq2.pop();
	}
	cout << endl;

	return 0;
}